
ac.skill('反击螺旋'){
    model1 = [[390.mdl]],
    model2 = [[Abilities\Weapons\AncientProtectorMissile\AncientProtectorMissile.mdl]],
    on_run = function(self,hero,target)
        local point1 = hero:get_point()
        local point2 = target:get_point()
        local damage = self:dmg_get()
        local shadow = hero:create_shadow(point1)
        shadow:set_model('hero_30.mdl')
        shadow:set_speed(3)
        shadow:play_animation('walk')
        
        point1:launch_missile(point2,'',1200,0,function()
            shadow:remove()
            point2:add_effect(self.model1):remove()
            hero:aoe_damage(point2,400,damage,self,function(u)
                local point0 = u:get_point()
                local angle = point2 / point0
                local point = point2 - {angle,500}
                if u:is_type('建筑')==false and u:is_type('领主')==false then
                    ac.mover('point'){
                        start = point0,
                        target = point,
                        speed = 1600,
                        mover = u,
                        on_move = function(b, p)
                            p:add_effect(self.model2):remove()
                            return p:is_walkable(true)
                        end,
                    }
                end
            end)
        end,{
            mover = shadow,
            on_move = function(b, p)
                p:add_effect(self.model2):remove()
            end
        })
    end,
}